package com.spic.business.informatization.meeting.service;

import com.spic.business.informatization.meeting.domain.MeetingActivity;
import com.spic.business.informatization.meeting.domain.MeetingActivityGroup;
import com.spic.business.informatization.meeting.domain.MeetingActivityGroupWork;
import com.spic.business.informatization.meeting.dto.MeetingMeasureDTO;

import java.util.List;

/**
 * 工前会Service接口
 * 
 * @author spic
 * @date 2021-11-04
 */
public interface IMeetingActivityService 
{
    /**
     * 查询工前会
     * 
     * @param id 工前会主键
     * @return 工前会
     */
    public MeetingActivity selectMeetingActivityById(Long id);

    /**
     * 查询工前会列表
     * 
     * @param meetingActivity 工前会
     * @return 工前会集合
     */
    public List<MeetingActivity> selectMeetingActivityList(MeetingActivity meetingActivity);

    /**
     * 新增工前会
     * 
     * @param meetingActivity 工前会
     * @return 结果
     */
    public long insertMeetingActivity(MeetingActivity meetingActivity);

    /**
     * 批量删除工前会
     * 
     * @param ids 需要删除的工前会主键集合
     * @return 结果
     */
    public int deleteMeetingActivityByIds(Long[] ids);

    /**
     * 删除工作组信息
     * @param ids
     * @return
     */
    public int deleteMeetingActivityGroupByIds(Long[] ids);
    /**
     * 删除工前会信息
     * 
     * @param id 工前会主键
     * @return 结果
     */
    public int deleteMeetingActivityById(Long id);

    /**
     * 新增工前会
     *
     * @param measure 组活动
     * @return 结果
     */
    public int insertMeetingActivityGroupWork(MeetingMeasureDTO measure);

    /**
     * 查询工作组措施
     *
     * @param id 工前会主键
     * @return 工前会
     */
    public List<MeetingActivityGroupWork> getWorkInfoByGroupId(Long id);

    /****
     * 有工前会生成票据
     * @param id
     */
    void generateTicket(Long id);


    /** 保存工前会工作组信息
     * @param group
     * @return
     */
    Long saveGroup(MeetingActivityGroup group);
}
